import {materialBaseOptions} from "@/api/supplierManagement/supplierManagement";
import {getDict} from "@/api/common";

/**
 * @description table上面的按钮配置 （例如：新增、导出）
 */
export const operateList = [
  // {
  //   name: $i18n.t("common.add"),
  //   type: "primary",
  //   icon: "el-icon-circle-plus-outline",
  //   handleName: "add" //点击时返回的标识
  //   //auth: "mainplan_create", //权限字段
  // }
]

/**
 * @description 搜索条件配置
 */
export const searchConfig = {
  inline: true,
  formDesc: {
    settlementType:{
      type: "select",
      label: '结算方式',
      prop: {
        value: "value",
        text: "description"
      },
      options: async (data) => {
        const list = await getDict("settlement_method")
        return list.data.result;
      }
    },
    vendorName: {
      // 方案名称
      type: "input",
      label: '供应商名称'
    },
    materialBaseList:{
        type: "cascader",
        label: '供货权限',
        // attrProps: {
        //   value: "value",
        //   label: "label",
        //   children: "children",
        //   checkStrictly:true
        // },
        attrs: {
          collapseTags:true,
          clearable:true,
          props:{
            checkStrictly: true
            // multiple:true,
          }
        },
      on: {
        change: (val) => {
        }
      },
        options: async (data) => {
          const list = await materialBaseOptions()
          return  list.data.result
        },
    }
    // planType: {
    //   // 方案类型
    //   type: "select",
    //   label: $i18n.t("maintenance.schemeType"),
    //   prop: {
    //     value: "maintenanceType",
    //     text: "typeName"
    //   },
    //   options: async (data) => {
    //     const list = await maintenanceTypePage()
    //     return list.data.result.records
    //   }
    // },
    // regionCode_getFinalNode: {
    //   // 设备区域，后面带着_getFinalNode的参数会在 ele-page页面中进行处理，将原本返回的数组取末级节点id
    //   type: "cascader",
    //   label: $i18n.t("eamAssetManagement.equipmentGroup"),
    //   attrProps: {
    //     checkStrictly: true,
    //     value: "regionCode",
    //     label: "label",
    //     children: "children"
    //   },
    //   options: async (data) => {
    //     const list = await baseRegionModelingTree()
    //     return list.data.result
    //   },
    //   vif:(row)=>{
    //     return  row.applicableType!=="2"
    //   }
    // },
    // cycleMode: {
    //   // 循环方式
    //   type: "select",
    //   label: $i18n.t("maintenance.cyclicMode"),
    //   // prop: {
    //   //   value: "value",
    //   //   text: "label"
    //   // },
    //   options: (data) => {
    //     return CYCLE_MODE
    //   }
    // },
    // joinTime: {
    //   // 创建时间
    //   type: "datetimerange",
    //   label: $i18n.t("maintenance.createTime"),
    //   attrs: {
    //     valueFormat: "yyyy-MM-dd",
    //     format: "yyyy-MM-dd",
    //     searchArrKey: ["startTime", "endTime"]
    //   }
    //   // on事件 change方法
    //   // on: {
    //   //   change: (val) => {
    //   //     this.selectDate(val, "1")
    //   //   }
    //   // }
    // }
  }
}

/**
 * @description table行末操作列按钮配置 （例如：修改、查看、删除）
 */
export const rowConfig = [
  {
    name: '编辑',
    type: "primary",
    class: "row-btn-primary",
    handleName: "edit" //点击时返回的标识
    //auth: "mainplan_update", //权限字段
  },
]
//混入formDescDialog
export const formDescDialogMixin = {
  data: function () {
    return {
      formDescDialog: {
        labelWidth: 140,
        span: 24,
        disabled: false,
        isShowSubmitBtn: true,
        rules: {},
        formDesc: {
          vendorCode: {
            // 供应商编码
            type: "input",
            label: '供应商编码',
            layout: 12,
            disabled:true,
          },
          vendorName: {
            // 供应商名称
            type: "input",
            label: '供应商名称',
            layout: 12,
            disabled:true,
          },
          accountGrpCode: {
            // 账户组
            type: "input",
            label: '账户组',
            layout: 12,
            disabled:true,
          },
          taxCode: {
            // 统一信用代码号
            type: "input",
            label: '统一信用代码号',
            layout: 12,
            disabled:true,
          },
          streetRoom: {
            // 地址
            type: "input",
            label: '地址',
            layout: 12,
            disabled:true,
          },
          mesTmMaterialBaseList:{
            type: "cascader",
            label: '供货列表',
            layout: 12,
            // attrProps: {
            //   value: "value",
            //   label: "label",
            //   children: "children",
            //   checkStrictly:true
            // },

            attrs: {
              collapseTags:true,
              clearable:true,
              props:{
                multiple:true,
              }
            },
            on: {
              change: (val) => {
              }
            },
            options: async (data) => {
              const list = await materialBaseOptions()
              return  list.data.result
            },
          },
          settlementType: {
            // 方案类型
            type: "select",
            label: '结算方式',
            // required: true,
            layout: 12,
            default:1,

            prop: {
              value: "value",
              text: "description"
            },
            options: async (data) => {
              const list = await getDict("settlement_method")
              return list.data.result;
            }
          },
          contractCode : {
            // 合同号
            type: "input",
            label: '合同号',
            layout: 12
          },
          contractName: {
            // 合同名称
            type: "input",
            label: '合同名称',
            layout: 12
          },
          // applicableType:{
          //   type: "select",
          //   label:'作业对象',
          //   required:true,
          //   layout: 12,
          //   prop: {
          //     value: "value",
          //     text: "label"
          //   },
          //   options: async (data) => {
          //     return [
          //       {
          //         value:'1',
          //         label:"设备"
          //       },
          //       {
          //         value:'2',
          //         label:"工装"
          //       }
          //     ]
          //   },
          //   on:{
          //     change: (val) => {
          //       this.formDataDialog.deviceStandardList=[]
          //       this.applicableTypeChange(val)
          //     }
          //   }
          // },
          // regionCode: {
          //   // 设备区域
          //   type: "tree-select",
          //   label: '区域',
          //   layout: 12,
          //   required: true,
          //   // optionsLinkageFields: ["parentId"],
          //   // disabled: (row) => {
          //   //   return !!row.id
          //   // },
          //   attrs: {
          //     normalizer(node) {
          //       return {
          //         id: node.id,
          //         label: node.label,
          //         children: node.children
          //       }
          //     }
          //   },
          //   options: async (data) => {
          //     const list = await baseRegionModelingTree()
          //     return list.data.result
          //   },
          //   // on事件 change方法
          //   on: {
          //     select: (val) => {
          //       this.formDataDialog.regionName = val.regionName
          //     }
          //   },
          // },
          // typeCode: {
          //   // 设备类型
          //   type: "tree-select",
          //   label: $i18n.t("maintenance.equipmentType"),
          //   layout: 12,
          //   // required: true,
          //   // optionsLinkageFields: ["parentId"],
          //   // disabled: (row) => {
          //   //   return !!row.id
          //   // },
          //   attrs: {
          //     normalizer(node) {
          //       return {
          //         id: node.id,
          //         label: node.label,
          //         children: node.children
          //       }
          //     }
          //   },
          //   options: async (data) => {
          //     const list = await commonEquipmentTypeTree()
          //     return list.data.result
          //   },
          //   // on事件 change方法
          //   on: {
          //     select: (val) => {
          //       // console.log('val', val)
          //       this.formDataDialog.typeName = val.typeName
          //     }
          //   },
          //   vif:(row)=>{
          //     return row.applicableType!=="2"
          //   }
          // },
          //
          // cycleMode: {
          //   // 循环方式
          //   type: "radio",
          //   label: $i18n.t("maintenance.cyclicMode"),
          //   required: true,
          //   layout: 12,
          //   // prop: {
          //   //   value: "value",
          //   //   text: "label"
          //   // },
          //   options: (data) => {
          //     return CYCLE_MODE
          //   }
          //   // options: async (data) => {
          //   //   const list = await getInspectionPeriodUnitList()
          //   //   return list.data.result
          //   // }
          // },
          // cycleNumber: {
          //   // 循环周期
          //   type: "number",
          //   label: $i18n.t("maintenance.cyclePeriod"),
          //   required: true,
          //   layout: 12,
          //   attrs: {
          //     min: 1,
          //     step: 1,
          //     "step-strictly": true,
          //     "controls-position": "right"
          //   },
          //   // 展示隐藏
          //   vif: (row) => {
          //     return row.cycleMode == 1
          //   }
          // },
          // cycleType: {
          //   // 周期类型
          //   type: "select",
          //   label: $i18n.t("maintenance.cycleType"),
          //   required: true,
          //   layout: 12,
          //   // 展示隐藏
          //   vif: (row) => {
          //     return row.cycleMode == 1
          //   },
          //   // prop: {
          //   //   value: "value",
          //   //   text: "label"
          //   // },
          //   options: (data) => {
          //     return CYCLE_TYPE
          //   }
          // },
          // dayOfTheWeek: {
          //   // 具体周几
          //   type: "select",
          //   label: $i18n.t("maintenance.dayOfTheWeek"),
          //   required: true,
          //   attrs: {
          //     multiple: true
          //   },
          //   layout: 12,
          //   // 展示隐藏
          //   vif: (row) => {
          //     return row.cycleMode == 2
          //   },
          //   options: (data) => {
          //     return [
          //       {
          //         text: $i18n.t("maintenance.weekly") + $i18n.t("maintenance.monday"),
          //         value: "1"
          //       },
          //       {
          //         text: $i18n.t("maintenance.weekly") + $i18n.t("maintenance.tuesday"),
          //         value: "2"
          //       },
          //       {
          //         text: $i18n.t("maintenance.weekly") + $i18n.t("maintenance.wednesday"),
          //         value: "3"
          //       },
          //       {
          //         text: $i18n.t("maintenance.weekly") + $i18n.t("maintenance.thursday"),
          //         value: "4"
          //       },
          //       {
          //         text: $i18n.t("maintenance.weekly") + $i18n.t("maintenance.friday"),
          //         value: "5"
          //       },
          //       {
          //         text: $i18n.t("maintenance.weekly") + $i18n.t("maintenance.saturday"),
          //         value: "6"
          //       },
          //       {
          //         text: $i18n.t("maintenance.weekly") + $i18n.t("maintenance.sunday"),
          //         value: "7"
          //       }
          //     ]
          //   }
          // },
          // fixedCycle: {
          //   // 具体天数
          //   type: "select",
          //   label: $i18n.t("maintenance.specificDays"),
          //   required: true,
          //   attrs: {
          //     multiple: true
          //   },
          //   layout: 12,
          //   // 展示隐藏
          //   vif: (row) => {
          //     return row.cycleMode == 3
          //   },
          //   // prop: {
          //   //   value: "value",
          //   //   text: "label"
          //   // },
          //   options: (data) => {
          //     let list = []
          //     for (let i = 1; i <= 31; i++) {
          //       list.push({
          //         text: $i18n.t("maintenance.monthly") + i + $i18n.t("maintenance.number"),
          //         value: i.toString()
          //       })
          //     }
          //     return list
          //   }
          // },
          // expirationDate: {
          //   // 任务有效期
          //   type: "number",
          //   label: $i18n.t("maintenance.taskValidity"),
          //   required: true,
          //   layout: 12,
          //   // 展示隐藏
          //   vif: (row) => {
          //     return row.cycleMode == 2 || row.cycleMode == 3
          //   },
          //   attrs: {
          //     min: 1,
          //     step: 1,
          //     "step-strictly": true,
          //     "controls-position": "right"
          //   }
          // },
          // specRule: {
          //   // 跳过节假日
          //   type: "switch",
          //   label: $i18n.t("maintenance.homeworkSkipHoliday"),
          //   layout: 12,
          //   valueFormatter(labels) {
          //     return labels ? 1 : 0
          //   },
          //   displayFormatter(labels) {
          //     return labels == 1 ? true : false
          //   }
          //   // active-text="按月付费"
          //   // inactive-text="按年付费"
          // },
          //
          // deviceStandardList: {
          //   // 添加设备明细
          //   // type: "input",
          //   label: $i18n.t("maintenance.addEquipment"),
          //   layout: 24,
          //   required: true,
          // },
        }
      }
    }
  },
  methods: {}
}
